/*
 * XML Type:  table-generator
 * Namespace: http://java.sun.com/xml/ns/persistence/orm
 * Java type: com.googlecode.horncomb.orm.jpa.v10.xmlbeans.TableGenerator
 *
 * Automatically generated - do not modify.
 */
package com.googlecode.horncomb.orm.jpa.v10.xmlbeans.impl;
/**
 * An XML table-generator(@http://java.sun.com/xml/ns/persistence/orm).
 *
 * This is a complex type.
 */
@SuppressWarnings("unchecked")
public class TableGeneratorImpl extends org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements com.googlecode.horncomb.orm.jpa.v10.xmlbeans.TableGenerator
{

    /**  */
	private static final long serialVersionUID = 3554813860441641534L;


	public TableGeneratorImpl(org.apache.xmlbeans.SchemaType sType)
    {
        super(sType);
    }

    private static final javax.xml.namespace.QName UNIQUECONSTRAINT$0 =
        new javax.xml.namespace.QName("http://java.sun.com/xml/ns/persistence/orm", "unique-constraint");
    private static final javax.xml.namespace.QName NAME$2 =
        new javax.xml.namespace.QName("", "name");
    private static final javax.xml.namespace.QName TABLE$4 =
        new javax.xml.namespace.QName("", "table");
    private static final javax.xml.namespace.QName CATALOG$6 =
        new javax.xml.namespace.QName("", "catalog");
    private static final javax.xml.namespace.QName SCHEMA$8 =
        new javax.xml.namespace.QName("", "schema");
    private static final javax.xml.namespace.QName PKCOLUMNNAME$10 =
        new javax.xml.namespace.QName("", "pk-column-name");
    private static final javax.xml.namespace.QName VALUECOLUMNNAME$12 =
        new javax.xml.namespace.QName("", "value-column-name");
    private static final javax.xml.namespace.QName PKCOLUMNVALUE$14 =
        new javax.xml.namespace.QName("", "pk-column-value");
    private static final javax.xml.namespace.QName INITIALVALUE$16 =
        new javax.xml.namespace.QName("", "initial-value");
    private static final javax.xml.namespace.QName ALLOCATIONSIZE$18 =
        new javax.xml.namespace.QName("", "allocation-size");


    /**
     * Gets a List of "unique-constraint" elements
     */
    public java.util.List<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint> getUniqueConstraintList()
    {
        final class UniqueConstraintList extends java.util.AbstractList<com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint>
        {
            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint get(int i)
                { return TableGeneratorImpl.this.getUniqueConstraintArray(i); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint set(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint o)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint old = TableGeneratorImpl.this.getUniqueConstraintArray(i);
                TableGeneratorImpl.this.setUniqueConstraintArray(i, o);
                return old;
            }

            @Override
			public void add(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint o)
                { TableGeneratorImpl.this.insertNewUniqueConstraint(i).set(o); }

            @Override
			public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint remove(int i)
            {
                com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint old = TableGeneratorImpl.this.getUniqueConstraintArray(i);
                TableGeneratorImpl.this.removeUniqueConstraint(i);
                return old;
            }

            @Override
			public int size()
                { return TableGeneratorImpl.this.sizeOfUniqueConstraintArray(); }

        }

        synchronized (monitor())
        {
            check_orphaned();
            return new UniqueConstraintList();
        }
    }

    /**
     * Gets array of all "unique-constraint" elements
     */
	public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint[] getUniqueConstraintArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            java.util.List targetList = new java.util.ArrayList();
            get_store().find_all_element_users(UNIQUECONSTRAINT$0, targetList);
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint[] result = new com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint[targetList.size()];
            targetList.toArray(result);
            return result;
        }
    }

    /**
     * Gets ith "unique-constraint" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint getUniqueConstraintArray(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint)get_store().find_element_user(UNIQUECONSTRAINT$0, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            return target;
        }
    }

    /**
     * Returns number of "unique-constraint" element
     */
    public int sizeOfUniqueConstraintArray()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(UNIQUECONSTRAINT$0);
        }
    }

    /**
     * Sets array of all "unique-constraint" element
     */
    public void setUniqueConstraintArray(com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint[] uniqueConstraintArray)
    {
        synchronized (monitor())
        {
            check_orphaned();
            arraySetterHelper(uniqueConstraintArray, UNIQUECONSTRAINT$0);
        }
    }

    /**
     * Sets ith "unique-constraint" element
     */
    public void setUniqueConstraintArray(int i, com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint uniqueConstraint)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint)get_store().find_element_user(UNIQUECONSTRAINT$0, i);
            if (target == null)
            {
                throw new IndexOutOfBoundsException();
            }
            target.set(uniqueConstraint);
        }
    }

    /**
     * Inserts and returns a new empty value (as xml) as the ith "unique-constraint" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint insertNewUniqueConstraint(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint)get_store().insert_element_user(UNIQUECONSTRAINT$0, i);
            return target;
        }
    }

    /**
     * Appends and returns a new empty value (as xml) as the last "unique-constraint" element
     */
    public com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint addNewUniqueConstraint()
    {
        synchronized (monitor())
        {
            check_orphaned();
            com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint target = null;
            target = (com.googlecode.horncomb.orm.jpa.v10.xmlbeans.UniqueConstraint)get_store().add_element_user(UNIQUECONSTRAINT$0);
            return target;
        }
    }

    /**
     * Removes the ith "unique-constraint" element
     */
    public void removeUniqueConstraint(int i)
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(UNIQUECONSTRAINT$0, i);
        }
    }

    /**
     * Gets the "name" attribute
     */
    public java.lang.String getName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(NAME$2);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "name" attribute
     */
    public org.apache.xmlbeans.XmlString xgetName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(NAME$2);
            return target;
        }
    }

    /**
     * Sets the "name" attribute
     */
    public void setName(java.lang.String name)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(NAME$2);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(NAME$2);
            }
            target.setStringValue(name);
        }
    }

    /**
     * Sets (as xml) the "name" attribute
     */
    public void xsetName(org.apache.xmlbeans.XmlString name)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(NAME$2);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(NAME$2);
            }
            target.set(name);
        }
    }

    /**
     * Gets the "table" attribute
     */
    public java.lang.String getTable()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(TABLE$4);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "table" attribute
     */
    public org.apache.xmlbeans.XmlString xgetTable()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(TABLE$4);
            return target;
        }
    }

    /**
     * True if has "table" attribute
     */
    public boolean isSetTable()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(TABLE$4) != null;
        }
    }

    /**
     * Sets the "table" attribute
     */
    public void setTable(java.lang.String table)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(TABLE$4);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(TABLE$4);
            }
            target.setStringValue(table);
        }
    }

    /**
     * Sets (as xml) the "table" attribute
     */
    public void xsetTable(org.apache.xmlbeans.XmlString table)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(TABLE$4);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(TABLE$4);
            }
            target.set(table);
        }
    }

    /**
     * Unsets the "table" attribute
     */
    public void unsetTable()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(TABLE$4);
        }
    }

    /**
     * Gets the "catalog" attribute
     */
    public java.lang.String getCatalog()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(CATALOG$6);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "catalog" attribute
     */
    public org.apache.xmlbeans.XmlString xgetCatalog()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(CATALOG$6);
            return target;
        }
    }

    /**
     * True if has "catalog" attribute
     */
    public boolean isSetCatalog()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(CATALOG$6) != null;
        }
    }

    /**
     * Sets the "catalog" attribute
     */
    public void setCatalog(java.lang.String catalog)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(CATALOG$6);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(CATALOG$6);
            }
            target.setStringValue(catalog);
        }
    }

    /**
     * Sets (as xml) the "catalog" attribute
     */
    public void xsetCatalog(org.apache.xmlbeans.XmlString catalog)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(CATALOG$6);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(CATALOG$6);
            }
            target.set(catalog);
        }
    }

    /**
     * Unsets the "catalog" attribute
     */
    public void unsetCatalog()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(CATALOG$6);
        }
    }

    /**
     * Gets the "schema" attribute
     */
    public java.lang.String getSchema()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(SCHEMA$8);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "schema" attribute
     */
    public org.apache.xmlbeans.XmlString xgetSchema()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(SCHEMA$8);
            return target;
        }
    }

    /**
     * True if has "schema" attribute
     */
    public boolean isSetSchema()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(SCHEMA$8) != null;
        }
    }

    /**
     * Sets the "schema" attribute
     */
    public void setSchema(java.lang.String schema)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(SCHEMA$8);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(SCHEMA$8);
            }
            target.setStringValue(schema);
        }
    }

    /**
     * Sets (as xml) the "schema" attribute
     */
    public void xsetSchema(org.apache.xmlbeans.XmlString schema)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(SCHEMA$8);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(SCHEMA$8);
            }
            target.set(schema);
        }
    }

    /**
     * Unsets the "schema" attribute
     */
    public void unsetSchema()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(SCHEMA$8);
        }
    }

    /**
     * Gets the "pk-column-name" attribute
     */
    public java.lang.String getPkColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(PKCOLUMNNAME$10);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "pk-column-name" attribute
     */
    public org.apache.xmlbeans.XmlString xgetPkColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(PKCOLUMNNAME$10);
            return target;
        }
    }

    /**
     * True if has "pk-column-name" attribute
     */
    public boolean isSetPkColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(PKCOLUMNNAME$10) != null;
        }
    }

    /**
     * Sets the "pk-column-name" attribute
     */
    public void setPkColumnName(java.lang.String pkColumnName)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(PKCOLUMNNAME$10);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(PKCOLUMNNAME$10);
            }
            target.setStringValue(pkColumnName);
        }
    }

    /**
     * Sets (as xml) the "pk-column-name" attribute
     */
    public void xsetPkColumnName(org.apache.xmlbeans.XmlString pkColumnName)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(PKCOLUMNNAME$10);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(PKCOLUMNNAME$10);
            }
            target.set(pkColumnName);
        }
    }

    /**
     * Unsets the "pk-column-name" attribute
     */
    public void unsetPkColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(PKCOLUMNNAME$10);
        }
    }

    /**
     * Gets the "value-column-name" attribute
     */
    public java.lang.String getValueColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(VALUECOLUMNNAME$12);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "value-column-name" attribute
     */
    public org.apache.xmlbeans.XmlString xgetValueColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(VALUECOLUMNNAME$12);
            return target;
        }
    }

    /**
     * True if has "value-column-name" attribute
     */
    public boolean isSetValueColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(VALUECOLUMNNAME$12) != null;
        }
    }

    /**
     * Sets the "value-column-name" attribute
     */
    public void setValueColumnName(java.lang.String valueColumnName)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(VALUECOLUMNNAME$12);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(VALUECOLUMNNAME$12);
            }
            target.setStringValue(valueColumnName);
        }
    }

    /**
     * Sets (as xml) the "value-column-name" attribute
     */
    public void xsetValueColumnName(org.apache.xmlbeans.XmlString valueColumnName)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(VALUECOLUMNNAME$12);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(VALUECOLUMNNAME$12);
            }
            target.set(valueColumnName);
        }
    }

    /**
     * Unsets the "value-column-name" attribute
     */
    public void unsetValueColumnName()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(VALUECOLUMNNAME$12);
        }
    }

    /**
     * Gets the "pk-column-value" attribute
     */
    public java.lang.String getPkColumnValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(PKCOLUMNVALUE$14);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }

    /**
     * Gets (as xml) the "pk-column-value" attribute
     */
    public org.apache.xmlbeans.XmlString xgetPkColumnValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(PKCOLUMNVALUE$14);
            return target;
        }
    }

    /**
     * True if has "pk-column-value" attribute
     */
    public boolean isSetPkColumnValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(PKCOLUMNVALUE$14) != null;
        }
    }

    /**
     * Sets the "pk-column-value" attribute
     */
    public void setPkColumnValue(java.lang.String pkColumnValue)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(PKCOLUMNVALUE$14);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(PKCOLUMNVALUE$14);
            }
            target.setStringValue(pkColumnValue);
        }
    }

    /**
     * Sets (as xml) the "pk-column-value" attribute
     */
    public void xsetPkColumnValue(org.apache.xmlbeans.XmlString pkColumnValue)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlString target = null;
            target = (org.apache.xmlbeans.XmlString)get_store().find_attribute_user(PKCOLUMNVALUE$14);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlString)get_store().add_attribute_user(PKCOLUMNVALUE$14);
            }
            target.set(pkColumnValue);
        }
    }

    /**
     * Unsets the "pk-column-value" attribute
     */
    public void unsetPkColumnValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(PKCOLUMNVALUE$14);
        }
    }

    /**
     * Gets the "initial-value" attribute
     */
    public int getInitialValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(INITIALVALUE$16);
            if (target == null)
            {
                return 0;
            }
            return target.getIntValue();
        }
    }

    /**
     * Gets (as xml) the "initial-value" attribute
     */
    public org.apache.xmlbeans.XmlInt xgetInitialValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlInt target = null;
            target = (org.apache.xmlbeans.XmlInt)get_store().find_attribute_user(INITIALVALUE$16);
            return target;
        }
    }

    /**
     * True if has "initial-value" attribute
     */
    public boolean isSetInitialValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(INITIALVALUE$16) != null;
        }
    }

    /**
     * Sets the "initial-value" attribute
     */
    public void setInitialValue(int initialValue)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(INITIALVALUE$16);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(INITIALVALUE$16);
            }
            target.setIntValue(initialValue);
        }
    }

    /**
     * Sets (as xml) the "initial-value" attribute
     */
    public void xsetInitialValue(org.apache.xmlbeans.XmlInt initialValue)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlInt target = null;
            target = (org.apache.xmlbeans.XmlInt)get_store().find_attribute_user(INITIALVALUE$16);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlInt)get_store().add_attribute_user(INITIALVALUE$16);
            }
            target.set(initialValue);
        }
    }

    /**
     * Unsets the "initial-value" attribute
     */
    public void unsetInitialValue()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(INITIALVALUE$16);
        }
    }

    /**
     * Gets the "allocation-size" attribute
     */
    public int getAllocationSize()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ALLOCATIONSIZE$18);
            if (target == null)
            {
                return 0;
            }
            return target.getIntValue();
        }
    }

    /**
     * Gets (as xml) the "allocation-size" attribute
     */
    public org.apache.xmlbeans.XmlInt xgetAllocationSize()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlInt target = null;
            target = (org.apache.xmlbeans.XmlInt)get_store().find_attribute_user(ALLOCATIONSIZE$18);
            return target;
        }
    }

    /**
     * True if has "allocation-size" attribute
     */
    public boolean isSetAllocationSize()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().find_attribute_user(ALLOCATIONSIZE$18) != null;
        }
    }

    /**
     * Sets the "allocation-size" attribute
     */
    public void setAllocationSize(int allocationSize)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_attribute_user(ALLOCATIONSIZE$18);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_attribute_user(ALLOCATIONSIZE$18);
            }
            target.setIntValue(allocationSize);
        }
    }

    /**
     * Sets (as xml) the "allocation-size" attribute
     */
    public void xsetAllocationSize(org.apache.xmlbeans.XmlInt allocationSize)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.XmlInt target = null;
            target = (org.apache.xmlbeans.XmlInt)get_store().find_attribute_user(ALLOCATIONSIZE$18);
            if (target == null)
            {
                target = (org.apache.xmlbeans.XmlInt)get_store().add_attribute_user(ALLOCATIONSIZE$18);
            }
            target.set(allocationSize);
        }
    }

    /**
     * Unsets the "allocation-size" attribute
     */
    public void unsetAllocationSize()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_attribute(ALLOCATIONSIZE$18);
        }
    }
}
